package cn.stylefeng.guns.modular.system.util;


import cn.stylefeng.guns.modular.system.util.Util;

public class TlvData {

	private String tag;
	private String len;
	private String value;
	public TlvData(String tag, String len, String value) {
		super();
		this.tag = tag;
		this.len = len;
		this.value = value;
	}
	
	public byte[] toByteArray(){
		byte[] tagArr = Util.hexStringToByteArray(tag);
		byte[] lenArr = Util.hexStringToByteArray(len);
		byte[] valueArr = Util.hexStringToByteArray(value);
		byte[] data = new byte[tagArr.length+lenArr.length+valueArr.length];

		System.arraycopy(tagArr, 0, data, 0, tagArr.length);
		System.arraycopy(lenArr, 0, data, tagArr.length, lenArr.length);
		System.arraycopy(valueArr, 0, data, lenArr.length+tagArr.length, valueArr.length);
		return data;
	}
	public byte[] valueToByteArray(){
		return Util.hexStringToByteArray(value);
	}
	
	public String getTag() {
		return tag;
	}



	public void setTag(String tag) {
		this.tag = tag;
	}



	public String getLen() {
		return len;
	}



	public void setLen(String len) {
		this.len = len;
	}



	public String getValue() {
		return value;
	}



	public void setValue(String value) {
		this.value = value;
	}


	@Override
	public String toString() {
		// TODO Auto-generated method stub
		return tag+len+value ;
	}
	
	public String tagAndValueString() {
		// TODO Auto-generated method stub
		return tag+"       "+value ;
	}
	
	public String testToString() {
		// TODO Auto-generated method stub
		return "tag: "+tag+", len: "+len+", value: "+value ;
	}
	
}
